#ifndef __PLAYER_MSG_H__
#define __PLAYER_MSG_H__

#include "./player.h"

class PlayerMsg : public Player
{
public:
	PlayerMsg(int id,
		string strName, 
		Point startPos, 
		float startAngle, 
		Point hpPos,
		float z,
		Color color);
	virtual ~PlayerMsg();

	//operation
	void SetGoHeading(bool bGoAhead);
	void Go(bool bGo);
	void TurnRollToAngle(float dstRollAngle);
	void TurnGunToAngle(float dstGunAngle);
	void ReverseRollAngle(bool bPositive);
	void ReverseGunAngle(bool bPositive);
	void Shoot();
	void SetSpeed(float speed);
	void SetRollSpeed(float rollspeed);
	void SetGunSpeed(float gunspeed);

	//get information
	int GetID();
	Point GetPos();
	bool GetGo();
	float GetRollAngle();
	float GetGunAngle();	
	float GetSpeed();
	float GetRollSpeed();
	float GetGunSpeed();

protected:
	void SetMsg(TankMsg* pMsg);
	void ClearMsg();

protected:
	TankMsg* m_pMsg;

	bool m_bHheading;
	bool m_bGo;
};

#endif